package models

import (
	"time"
)

type Customer struct {
	Id int64 `xorm:"oid"`

	Customerguid         string    `json:"CustomerGuid" xorm:"not null UUID"`
	Username             string    `json:"Username" xorm:"VARCHAR(1000)"`
	Email                string    `json:"Email" xorm:"VARCHAR(1000)"`
	Password             string    `json:"Password" xorm:"VARCHAR"`
	Passwordformatid     int       `json:"PasswordFormatId" xorm:"not null INTEGER"`
	Passwordsalt         string    `json:"PasswordSalt" xorm:"VARCHAR"`
	Admincomment         string    `json:"AdminComment" xorm:"VARCHAR"`
	Istaxexempt          int       `json:"IsTaxExempt" xorm:"not null BIT(1)"`
	Affiliateid          int       `json:"AffiliateId" xorm:"not null INTEGER"`
	Vendorid             int       `json:"VendorId" xorm:"not null INTEGER"`
	Hasshoppingcartitems int       `json:"HasShoppingCartItems" xorm:"not null BIT(1)"`
	Active               int       `json:"Active" xorm:"not null BIT(1)"`
	Deleted              int       `json:"Deleted" xorm:"not null BIT(1)"`
	Issystemaccount      int       `json:"IsSystemAccount" xorm:"not null BIT(1)"`
	Systemname           string    `json:"SystemName" xorm:"VARCHAR(400)"`
	Lastipaddress        string    `json:"LastIpAddress" xorm:"VARCHAR"`
	Createdonutc         time.Time `json:"CreatedOnUtc" xorm:"not null DATETIME"`
	Lastlogindateutc     time.Time `json:"LastLoginDateUtc" xorm:"DATETIME"`
	Lastactivitydateutc  time.Time `json:"LastActivityDateUtc" xorm:"not null DATETIME"`
	BillingaddressId     int       `json:"BillingAddress_Id" xorm:"INTEGER"`
	ShippingaddressId    int       `json:"ShippingAddress_Id" xorm:"INTEGER"`
}
